Nucleic acids are useful as tags for a variety of items. Nucleic acids can be used to tag large numbers of items because they provide a large repertoire of different ‘words’ that can be constructed from an alphabet of the four naturally occurring nucleotides: A, C, T (or U in the case of RNA) and G. Nucleic acids are appealing as tags because there are a variety of well established methods for accurately copying the words and deciphering the words. Thus nucleic acid tags can be archived, read multiple times, and amplified to increase copy number to suit various uses. Furthermore, nucleic acids are a relatively robust molecule that can be conveniently manipulated with an acceptably low risk of degradation.
However, as the number and length of the words in a nucleic acid tag increases, the techniques and systems required to decipher the tags become concomitantly more complex and expensive. What is needed are simplified ways to detect and decipher complex collections of nucleic acid tags. The present disclosure addresses this need and provides other advantages as well.